{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 一.简介\n",
    "前两节分别实现了硬间隔支持向量机与软间隔支持向量机，它们本质上都是线性分类器，只是软间隔对“异常点”更加宽容，它们对形如如下的螺旋数据都没法进行良好分类，因为没法找到一个直线（超平面）能将其分隔开，必须使用曲线（超曲面）才能将其分隔，而核技巧便是处理这类问题的一种常用手段。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import copy\n",
    "import random\n",
    "import os\n",
    "os.chdir('../')\n",
    "from ml_models import utils\n",
    "from ml_models.svm import *\n",
    "from sklearn import datasets\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1a6aacc7400>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data, target = datasets.make_moons(noise=0.01)\n",
    "plt.scatter(data[:,0],data[:,1],c=target)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 二.核技巧\n",
    "核技巧简单来说分为两步：  \n",
    "（1）将低维非线性可分数据$x$，通过一个非线性映射函数$\\phi$，映射到一个新空间（高维度甚至是无限维空间）；  \n",
    "（2）对新空间的数据$\\phi(x)$训练线性分类器  \n",
    "\n",
    "比如如下的情况：  \n",
    "\n",
    "原始数据需要使用一个椭圆才能分隔开，但对原始数据施加一个非线性变换$\\phi:(x_1,x_2)->(x_1^2,x_2^2)$变换后，在新空间中就可以线性分隔了\n",
    "\n",
    "![avatar](./source/06_核技巧.svg) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 利用核技巧后的SVM\n",
    "所以，如果对原始数据施加一个映射，此时软间隔SVM的对偶问题为：  \n",
    "\n",
    "$$\n",
    "\\min_{\\alpha} \\frac{1}{2}\\sum_{i=1}^N\\sum_{j=1}^N\\alpha_i\\alpha_jy_iy_j\\phi(x_i)^T\\phi(x_j)-\\sum_{i=1}^N\\alpha_i\\\\\n",
    "s.t.\\sum_{i=1}^N\\alpha_iy_i=0,\\\\\n",
    "0\\leq\\alpha_i\\leq C,i=1,2,...,N\n",
    "$$  \n",
    "求解得最优$\\alpha_i^*$后，SVM模型为：  \n",
    "\n",
    "$$\n",
    "f(x)=sign(\\sum_{i=1}^N\\alpha_iy_i\\phi(x_i)^T\\phi(x)+b^*)\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 三.核函数   \n",
    "观察一下上面公式，我们的目的其实是求解$\\phi(x_i)^T\\phi(x_j)$，有没有一种函数让$(x_i,x_j)$只在原始空间做计算就达到$\\phi(x_i)^T\\phi(x_j)$的效果呢？有的，那就是核函数，即：  \n",
    "\n",
    "$$\n",
    "K(x_i,x_j)=\\phi(x_i)^T\\phi(x_j)\n",
    "$$  \n",
    "\n",
    "#### 怎样的函数才能做核函数？\n",
    "要成为核函数必须满足如下两点条件：  \n",
    "\n",
    "（1）对称性：$K(x_i,x_j)=K(x_j,x_i)$  \n",
    "\n",
    "（2）正定性：对任意的$x_i,i=1,2,..,m$，$K(x,z)$对应的Gramm矩阵：  \n",
    "\n",
    "$$\n",
    "K=[K(x_i,x_j)]_{m\\times m}\n",
    "$$  \n",
    "是半正定矩阵，这里的$x_i\\in$可行域，并不要求一定要属于样本集  \n",
    "\n",
    "#### 常见的核函数有哪些？\n",
    "\n",
    "目前用的比较多的核函数有如下一些：  \n",
    "\n",
    "（1）多项式核函数：  \n",
    "\n",
    "$$\n",
    "K(x,z)=(x^Tz+1)^p\n",
    "$$  \n",
    "\n",
    "（2）高斯核函数：  \n",
    "\n",
    "$$\n",
    "K(x,z)=exp(-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2})\n",
    "$$  \n",
    "\n",
    "显然，线性可分SVM中使用的是$K(x,z)=x^Tz$也是核函数\n",
    "\n",
    "#### 利用核函数后的SVM\n",
    "\n",
    "利用核函数后，软间隔SVM的对偶问题为：  \n",
    "\n",
    "$$\n",
    "\\min_{\\alpha} \\frac{1}{2}\\sum_{i=1}^N\\sum_{j=1}^N\\alpha_i\\alpha_jy_iy_jK(x_i,x_j)-\\sum_{i=1}^N\\alpha_i\\\\\n",
    "s.t.\\sum_{i=1}^N\\alpha_iy_i=0,\\\\\n",
    "0\\leq\\alpha_i\\leq C,i=1,2,...,N\n",
    "$$  \n",
    "求解得最优$\\alpha_i^*$后，SVM模型为：  \n",
    "\n",
    "$$\n",
    "f(x)=sign(\\sum_{i=1}^N\\alpha_iy_iK(x,x_i)+b^*)\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 四.代码实现\n",
    "代码实现很简单，就在软间隔SVM的基础上将向量的内积计算$x^Tz$替换为$K(x,z)$即可，首先定义一些核函数：  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "\"\"\"\n",
    "该部分放到ml_model.kernel_functions中\n",
    "\"\"\"\n",
    "\n",
    "def linear():\n",
    "    \"\"\"\n",
    "    线性核函数\n",
    "    :return:linear function\n",
    "    \"\"\"\n",
    "\n",
    "    def _linear(x, y):\n",
    "        return np.dot(x, y)\n",
    "\n",
    "    return _linear\n",
    "\n",
    "\n",
    "def poly(p=2):\n",
    "    \"\"\"\n",
    "    多项式核函数\n",
    "    :param p:\n",
    "    :return: poly function\n",
    "    \"\"\"\n",
    "\n",
    "    def _poly(x, y):\n",
    "        return np.power(np.dot(x, y) + 1, p)\n",
    "\n",
    "    return _poly\n",
    "\n",
    "\n",
    "def rbf(sigma=0.1):\n",
    "    \"\"\"\n",
    "    径向基/高斯核函数\n",
    "    :param sigma:\n",
    "    :return:\n",
    "    \"\"\"\n",
    "\n",
    "    def _rbf(x, y):\n",
    "        np_x = np.asarray(x)\n",
    "        if np_x.ndim <= 1:\n",
    "            return np.exp((-1 * np.dot(x - y, x - y) / (2 * sigma * sigma)))\n",
    "        else:\n",
    "            return np.exp((-1 * np.multiply(x - y, x - y).sum(axis=1) / (2 * sigma * sigma)))\n",
    "\n",
    "    return _rbf"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from ml_models import kernel_functions\n",
    "\n",
    "\n",
    "class SVC(object):\n",
    "    def __init__(self, epochs=100, C=1.0, tol=1e-3, kernel=None, degree=3, gamma=0.1):\n",
    "        \"\"\"\n",
    "        :param epochs: 迭代次数上限\n",
    "        :param C: C越小，对于误分类的惩罚越小\n",
    "        :param tol:提前中止训练时的误差值上限，避免迭代太久\n",
    "        :param kernel:核函数\n",
    "        :param degree:kernel='poly'时生效\n",
    "        :param gamma:kernel='rbf'时生效\n",
    "        \"\"\"\n",
    "        self.b = None\n",
    "        self.alpha = None\n",
    "        self.E = None\n",
    "        self.epochs = epochs\n",
    "        self.C = C\n",
    "        self.tol = tol\n",
    "        # 定义核函数\n",
    "        if kernel is None:\n",
    "            self.kernel_function = kernel_functions.linear()\n",
    "        elif kernel == 'poly':\n",
    "            self.kernel_function = kernel_functions.poly(degree)\n",
    "        elif kernel == 'rbf':\n",
    "            self.kernel_function = kernel_functions.rbf(gamma)\n",
    "        else:\n",
    "            self.kernel_function = kernel_functions.linear()\n",
    "        # 记录支持向量\n",
    "        self.support_vectors = None\n",
    "        # 记录支持向量的x\n",
    "        self.support_vector_x = []\n",
    "        # 记录支持向量的y\n",
    "        self.support_vector_y = []\n",
    "        # 记录支持向量的alpha\n",
    "        self.support_vector_alpha = []\n",
    "\n",
    "    def f(self, x):\n",
    "        \"\"\"\n",
    "        :param x:\n",
    "        :return: wx+b\n",
    "        \"\"\"\n",
    "        x_np = np.asarray(x)\n",
    "        if len(self.support_vector_x) == 0:\n",
    "            if x_np.ndim <= 1:\n",
    "                return 0\n",
    "            else:\n",
    "                return np.zeros((x_np.shape[:-1]))\n",
    "        else:\n",
    "            if x_np.ndim <= 1:\n",
    "                wx = 0\n",
    "            else:\n",
    "                wx = np.zeros((x_np.shape[:-1]))\n",
    "            for i in range(0, len(self.support_vector_x)):\n",
    "                wx += self.kernel_function(x, self.support_vector_x[i]) * self.support_vector_alpha[i] * \\\n",
    "                      self.support_vector_y[i]\n",
    "            return wx + self.b\n",
    "\n",
    "    def init_params(self, X, y):\n",
    "        \"\"\"\n",
    "        :param X: (n_samples,n_features)\n",
    "        :param y: (n_samples,) y_i\\in\\{0,1\\}\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        n_samples, n_features = X.shape\n",
    "        self.b = .0\n",
    "        self.alpha = np.zeros(n_samples)\n",
    "        self.E = np.zeros(n_samples)\n",
    "        # 初始化E\n",
    "        for i in range(0, n_samples):\n",
    "            self.E[i] = self.f(X[i, :]) - y[i]\n",
    "\n",
    "    def _select_j(self, best_i):\n",
    "        \"\"\"\n",
    "        选择j\n",
    "        :param best_i:\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        valid_j_list = [i for i in range(0, len(self.alpha)) if self.alpha[i] > 0 and i != best_i]\n",
    "        best_j = -1\n",
    "        # 优先选择使得|E_i-E_j|最大的j\n",
    "        if len(valid_j_list) > 0:\n",
    "            max_e = 0\n",
    "            for j in valid_j_list:\n",
    "                current_e = np.abs(self.E[best_i] - self.E[j])\n",
    "                if current_e > max_e:\n",
    "                    best_j = j\n",
    "                    max_e = current_e\n",
    "        else:\n",
    "            # 随机选择\n",
    "            l = list(range(len(self.alpha)))\n",
    "            seq = l[: best_i] + l[best_i + 1:]\n",
    "            best_j = random.choice(seq)\n",
    "        return best_j\n",
    "\n",
    "    def _meet_kkt(self, x_i, y_i, alpha_i):\n",
    "        \"\"\"\n",
    "        判断是否满足KKT条件\n",
    "\n",
    "        :param w:\n",
    "        :param b:\n",
    "        :param x_i:\n",
    "        :param y_i:\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        if alpha_i < self.C:\n",
    "            return y_i * self.f(x_i) >= 1 - self.tol\n",
    "        else:\n",
    "            return y_i * self.f(x_i) <= 1 + self.tol\n",
    "\n",
    "    def fit(self, X, y2, show_train_process=False):\n",
    "        \"\"\"\n",
    "\n",
    "        :param X:\n",
    "        :param y2:\n",
    "        :param show_train_process: 显示训练过程\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        y = copy.deepcopy(y2)\n",
    "        y[y == 0] = -1\n",
    "        # 初始化参数\n",
    "        self.init_params(X, y)\n",
    "        for _ in range(0, self.epochs):\n",
    "            if_all_match_kkt = True\n",
    "            for i in range(0, len(self.alpha)):\n",
    "                x_i = X[i, :]\n",
    "                y_i = y[i]\n",
    "                alpha_i_old = self.alpha[i]\n",
    "                E_i_old = self.E[i]\n",
    "                # 外层循环：选择违反KKT条件的点i\n",
    "                if not self._meet_kkt(x_i, y_i, alpha_i_old):\n",
    "                    if_all_match_kkt = False\n",
    "                    # 内层循环，选择使|Ei-Ej|最大的点j\n",
    "                    best_j = self._select_j(i)\n",
    "\n",
    "                    alpha_j_old = self.alpha[best_j]\n",
    "                    x_j = X[best_j, :]\n",
    "                    y_j = y[best_j]\n",
    "                    E_j_old = self.E[best_j]\n",
    "\n",
    "                    # 进行更新\n",
    "                    # 1.首先获取无裁剪的最优alpha_2\n",
    "                    eta = self.kernel_function(x_i, x_i) + self.kernel_function(x_j, x_j) - 2.0 * self.kernel_function(\n",
    "                        x_i, x_j)\n",
    "                    # 如果x_i和x_j很接近，则跳过\n",
    "                    if eta < 1e-3:\n",
    "                        continue\n",
    "                    alpha_j_unc = alpha_j_old + y_j * (E_i_old - E_j_old) / eta\n",
    "                    # 2.裁剪并得到new alpha_2\n",
    "                    if y_i == y_j:\n",
    "                        L = max(0., alpha_i_old + alpha_j_old - self.C)\n",
    "                        H = min(self.C, alpha_i_old + alpha_j_old)\n",
    "                    else:\n",
    "                        L = max(0, alpha_j_old - alpha_i_old)\n",
    "                        H = min(self.C, self.C + alpha_j_old - alpha_i_old)\n",
    "\n",
    "                    if alpha_j_unc < L:\n",
    "                        alpha_j_new = L\n",
    "                    elif alpha_j_unc > H:\n",
    "                        alpha_j_new = H\n",
    "                    else:\n",
    "                        alpha_j_new = alpha_j_unc\n",
    "\n",
    "                    # 如果变化不够大则跳过\n",
    "                    if np.abs(alpha_j_new - alpha_j_old) < 1e-5:\n",
    "                        continue\n",
    "                    # 3.得到alpha_1_new\n",
    "                    alpha_i_new = alpha_i_old + y_i * y_j * (alpha_j_old - alpha_j_new)\n",
    "                    # 5.更新alpha_1,alpha_2\n",
    "                    self.alpha[i] = alpha_i_new\n",
    "                    self.alpha[best_j] = alpha_j_new\n",
    "                    # 6.更新b\n",
    "                    b_i_new = y_i - self.f(x_i) + self.b\n",
    "                    b_j_new = y_j - self.f(x_j) + self.b\n",
    "                    if self.C > alpha_i_new > 0:\n",
    "                        self.b = b_i_new\n",
    "                    elif self.C > alpha_j_new > 0:\n",
    "                        self.b = b_j_new\n",
    "                    else:\n",
    "                        self.b = (b_i_new + b_j_new) / 2.0\n",
    "                    # 7.更新E\n",
    "                    for k in range(0, len(self.E)):\n",
    "                        self.E[k] = self.f(X[k, :]) - y[k]\n",
    "\n",
    "                    # 8.更新支持向量相关的信息\n",
    "                    self.support_vectors = np.where(self.alpha > 1e-3)[0]\n",
    "                    self.support_vector_x = [X[i, :] for i in self.support_vectors]\n",
    "                    self.support_vector_y = [y[i] for i in self.support_vectors]\n",
    "                    self.support_vector_alpha = [self.alpha[i] for i in self.support_vectors]\n",
    "\n",
    "                    # 显示训练过程\n",
    "                    if show_train_process is True:\n",
    "                        utils.plot_decision_function(X, y2, self, [i, best_j])\n",
    "                        utils.plt.pause(0.1)\n",
    "                        utils.plt.clf()\n",
    "\n",
    "            # 如果所有的点都满足KKT条件，则中止\n",
    "            if if_all_match_kkt is True:\n",
    "                break\n",
    "\n",
    "        # 显示最终结果\n",
    "        if show_train_process is True:\n",
    "            utils.plot_decision_function(X, y2, self, self.support_vectors)\n",
    "            utils.plt.show()\n",
    "\n",
    "    def get_params(self):\n",
    "        \"\"\"\n",
    "        输出原始的系数\n",
    "        :return: w\n",
    "        \"\"\"\n",
    "\n",
    "        return self.w, self.b\n",
    "\n",
    "    def predict_proba(self, x):\n",
    "        \"\"\"\n",
    "        :param x:ndarray格式数据: m x n\n",
    "        :return: m x 1\n",
    "        \"\"\"\n",
    "        return utils.sigmoid(self.f(x))\n",
    "\n",
    "    def predict(self, x):\n",
    "        \"\"\"\n",
    "        :param x:ndarray格式数据: m x n\n",
    "        :return: m x 1\n",
    "        \"\"\"\n",
    "        proba = self.predict_proba(x)\n",
    "        return (proba >= 0.5).astype(int)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 五.查看效果"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAD8CAYAAAB+UHOxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzs3Xd81dX9+PHXuXtl7xBICISQECBskOkCQRwV66qzVutuq9XaZYcddtpWba1+qXUUJ1pAQUFAlCErQAiEDBLI3slNbu6+9/z+CPBDi3ADIQnkPB8PHubefPI57xvh8/58zngfIaVEURRFGXg0fR2AoiiK0jdUAlAURRmgVAJQFEUZoFQCUBRFGaBUAlAURRmgVAJQFEUZoM44AQghBgsh1gshCoUQ+4QQ3znBMUII8TchRKkQIl8IMf5M21UURVHOjK4HzuEHHpFS5gkhwoCdQog1Usr9xx0zH8g48mcK8I8j/1UURVH6yBk/AUgpa6WUeUe+7gAKgUFfOuwq4BXZ5XMgUgiRdKZtK4qiKKevJ54AjhFCpAHjgK1f+tYgoPK411VH3qs9wTnuBu4GsFiNEzJGJPdkiIqiKOe1PbvKm6SUcaEc22MJQAhhA5YC35VStn/52yf4kRPWoJBSvgC8AJA7Pl2u/fTJngpRURTlvBcbdvPhUI/tkVlAQgg9XRf//0gp3z3BIVXA4ONepwA1PdG2oiiKcnp6YhaQABYDhVLKP3/FYcuBW4/MBpoK2KWU/9P9oyiKovSenugCmg7cAuwVQuw+8t6PgCEAUsrngZXAAqAUcAJ39EC7iqIoyhk44wQgpdzIifv4jz9GAvefaVuKoihKz1ErgRVFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQYolQAURVEGKJUAFEVRBiiVABRFUQaoHkkAQoh/CSEahBAFX/H9OUIIuxBi95E/T/REu4qiKMrp0/XQef4NPAu8cpJjPpNSLuyh9hRFUZQz1CNPAFLKT4GWnjiXoiiK0jt6cwxgmhBijxBilRBi1FcdJIS4WwixQwixo7mpvRfDUxRFGVh6KwHkAalSyrHAM8B/v+pAKeULUsqJUsqJMbHhvRSeoijKwNMrCUBK2S6ldBz5eiWgF0LE9kbbiqIoyon1SgIQQiQKIcSRrycfabe5N9pWFEVRTqxHZgEJIV4H5gCxQogq4GeAHkBK+TxwLXCvEMIPuIAbpJSyJ9pWFEVRTk+PJAAp5Y2n+P6zdE0TVRRFUfoJtRJYURRlgFIJQFEUZYBSCUBRFGWAUglAURRlgFIJQFEUZYBSCUBRFGWAUglAURRlgFIJQFEUZYBSCUBRFGWAUglAURRlgFIJQFEUZYDqqS0hFeW0rK/f2CvtXJgwo1faUZRziUoAyllT5ig86ffzGitpanHwUcH0sxrHvJxNNDtXMz5u8BfeT7dlndV2FaW/UwlAOSveKV9NU4uDvMaMkxyVROSOLB7PGX5WY1m6Koa8iYWsLvIfe298XAlmy0Fuy1p4VttWlP5MJQClR6yv30hp/f/f4yfgC1C26kruPNXFPecsBwYsyhkO7i/GsXRVKenzl/Ni/rIvvG/Qa1VSUAYMlQCUM/Jy4fsAuJxeNm6Yy8xA106fAliUk9iHkZ3copzh7F53E8Evve+6aAkv5i/DoNcCYDUZuHbo3N4PUFF6gUoASretr99Is9NJa4fr2J0+wINnuSunp+Vm/G+C2r3uJko8jmOv0+cv5x1WA6hEoJx3VAJQQlbmKORwZzNFVQ1s3NB1MXwwPYdxvdCN01tyMxLJPe710lVXstHixpJdTlPLu8zN7Bo4VgPIyvlAJQAlJC8Xvo/L6SWvMQPn/lweTD+PrvonsejoU407h6cKtpLX2MD4uBJioyvVE4FyzlMJQPlKZY5C1pYVA12DumLdTdyZkQjpfRzYl0lJWOVBjG3NBAxG2tMyCZjMPd7M4xFTwN01gMz85bzY0TWAfNeYq3q8LUXpDSoBKP/j+IHdjwqmc1lDKuMyEuFkMzr7SNjhElI/fpeg3kBnQgp6p4PUj9+jcexUqqfPA40G4feh9bgJmMxI7Zn/lV+UMxwqH2Z3SR07R28HugaNh0RHqgVnyjlFSCn7OoavlDs+Xa799Mm+DmNAOdrVc3Rgd9FZHNjVeD3E7M8jdt8O9I52fFYbzdkTaBo1kaDR9JU/p3M6MHTYMbY0MOSTFWyeMIuXdm+jtLyE8PBIrp5+ITfUHiZgMCL1BiLKDhDU6RHBIC0jc6mdciG+sMge+xxLC0qpsbiZMXs1sdE2QA0YK30nNuzmnVLKiaEc2yMJQAjxL2Ah0CCl/J/OYSGEAP4KLACcwO1SyrxTnVclgN5xdHC3oqUNl9OLWHfTCWfIdIfO6SC2YDthVWUAdAwaStPoybQEAuzetwNNZzvfKN6LLmkIO+KTKfO6ifZ6Cd/6CfrqwzyflEbu7MtIiE/io49X0NjUwISERO4LD2OIvRVveBQx+7bTEJ/Mo9U1NImRxJsG0envoNxXyJ0Tx/Dtz1fz2pAM3vAH0djCmZM9loUIEksKKLr+23giY3vi13fM8YlAq9cyPCGGVGuMGjBWelVfJIBZgAN45SsSwALgQboSwBTgr1LKKac6r0oAZ9/6+o0UVTUcK8dwWUPqGV/8Iw7uZ+hHb9GSnkVhWBQAWR2tiF2beKK+iXLtIO5xVFGk9bIsPAKNT49NhlPRWobQCL5vHUa6r4VHNB48fjc54RMZJvRc27KZd03QMXU2sqGebzdWsCw2iYsLD7InahL7zCkAeP0Orqt7h3KtgWaPjfc1CTRTjzQESExJ5u7kJIx7d/KnsFjGjh7HwnmLSAQMHXb8Fivu6HgQ4ox+B0/ZtwJdZSgyU+JV15DSa7qTAHpkDEBK+akQIu0kh1xFV3KQwOdCiEghRJKUsrYn2le672hXD8DGDXN5/OisnogzO6+pqY601e+wZspF/HHFW/g7u5ZaCZMkrr2Vn7u0rI9IJFs0865mAq11m5kUPwu9z0A4sdQFK1gScPM3giS7XHjlcOIMiSy0b2dneC6ftTbSvOEzrrGNoNwZYHHDPmqsk/lOx35KjQl4NHpyvK0c9kvKGEyugCG6DFJkOgW+7dQcrubPVXZewMh0Yyb2TQdwb7ybjMxR+GMSMTja8Jss1Eyfhz399O/cH4/our95ZoMVZq+mqOpdzBaDWmWs9Cu9VQ56EFB53OuqI+/9DyHE3UKIHUKIHc1N7b0S3EBz9OIv1t3EuMqHT3tKp87pID5vIykb3idx23o6DhVT/fLTvFhXy/cX/5XIjkTGm2cw3jwDS3sExe2CfGsGsxxFHDTG43T5SCKNOlclHo8HndCTohlGlbOSQkMsIwMuwkUkYe5WIgNONnqtRBELQTCakhmitRCtjWWvo4lyQxzZ7moAIp317BGCuAC4NV1jCRqhJVxG4/V5SA5kUG9KYpK3me96W/k8GMk3PF5uq6nle5ZI8kaMIXXNu0QXnrKX8pQeTM9hXOXDiHU34XJ6/6f0hKL0pd5KACd6nj5h35OU8gUp5UQp5cSY2PCzHNbAUeYo5J3y1byYv+zM+/mlJGnLx+T86w+Y66ro1OpwVJRi+c13GV+Qz66mGKI64ylqzcfubQEgwhCFRmrYLqJI9rUSEBpAHutp0ev1BAigQYNEgtChEeCSnSTioV4XQafHgwcPZq2VBl04AQSX2YZSGSxlnwwS7evA6e+kOlBNhM7AFNnKHk3csbBd0oFNRKDT6NEH/Yx3HeIDazafO8M5VFRFWEMstXmN/Pid/7ArIZnMt/5J8qaPMDXVneFvv2uBmVh3EwFfgBfzl/FO+epeK4WtKF+lt6aBVgHH1+JNAWp6qe0B7/h+fmuzteuO/wymdCbs/JSokgJeyp3KG2s+wOFwYHe0kaXN4S3/fi4PtNOuSSdMRnKgLZ8p8XOINSbiYCONvk68QsdQTyNGYxS1zsNMsszEpgunw9FBfaCSeFMiQz31LDXYqJZluEQORunDjZPD8gCjIyaBEGyyjeC69n1st5kIWpvZb2+jwNJI7szp3LR+BZu1kRySekwC3NJFu2gjKAPEWoxkuOpp1VrZ4dLhli6SzIOJNsYxkSCzW51UfPoRnUPSCSsvIrZgO874QZTPv56AyXLav7fcjESofJhnygoAmDF7NbBRjQ8ofaa3EsBy4AEhxBt0DQLbVf9/7zh68T/Wz3+GffzC7yNp23reHjeDf7/zJpn6sURYo1nZ8haCCHbq4pnsr2cFMeg1CZR7CpFSIoSGsLAw9HI3BUJCwE6KfjuFUQaq/eXYva3Yw1qod1VysUbQEPASe9FVXBYWzqpPVzPLXYM/LBq9R0+UoWv2zgFjPLW6Ip42mxht0FE5fxG3WmzEFOdD8hCKOxwUOXaBX+DAjtlqxmq2MdWxjTqtlXpDFDXtFdg1TYyxTiTF28w8ez4v27J5s+1zbnYXYiktpvqCi1lQcRDDE99m+YRZzJ41j5SkIaf9Ozza5fbMBmD2apqdq9W0UaVP9EgCEEK8DswBYoUQVcDPAD2AlPJ5YCVdM4BK6ZoGekdPtKuc3NGa/Bs3zD2j0g2m5nrMdZUUHS7hYOFeHO3NLF69jKHakUQYogEwakwICZ/4o7hD52Sy3sH7vq4B4FpXBXWykgumXMDPgj42m8xU2SL4YXE+D+ZMYrXBRLG9lWHhkcwLBIg7kEfxNXdyS2LXQ+OV864l/tMPeL2xhr/YIvnwkzVYhA1n0MHIsVmYU9NxFu0hEB1L0GjmwE33E9Tq+M5b/+QaKfk8LAIZk0COxUZG6X72lh3gleYWJrhrqTcZyTSPxayzMK0lnw/Nafy3dQ+pjGCcwUJbUPLWmi18ovXwnM6EadN+fr9zK9++80FGDx2JqaUBqdHgjkno9iKzB9NzeGZD15PAO6gkoPQ+tRDsPHX04l+26srTXsxlbGkkbc1SjK1NrG2opa2mjlleH3ahY5HfxbjwS0iISgKgxL6PhvYaUmQqfzCWoZEBvq8z0hpvITVlKJdmZjO/sRYNktKrbkNqdeg77CTs/IzY/TvQeDwE9Qaas8dTP2EW3oioLwYTDJK6ZinhFSVUjczlkEZLrBAMO1SMCAYpueab+C22L/yIxush+sBuYgp3oXU78YZF0jR6Mm3Dsgi6Ohm7+Pf8a8w0Xl/+PlMNY7i7bRv3ayNxONyMjMjiB97dPK8dQZVTsJ8d3B85ihGBTl43xjM1uJvbhw7DExGNJuBH63HTkHsBdZPmgKZ7Q2tLC7r2JoiNtqkkoJyxXl8HcLaoBHB6jl/Ne7oXf4O9lZFvPMfBnEk8tS+PbVu2k6OdzBSjhzs8BXwc8PJCMI3sQePR6fQEZZCdzRupd1fxM6MZa9BFVlQ0QzJGodFo0HrcNI6eQu3Ui/73TllKRCCA1GpPOf/eUl9F7N5tGO2tBIwmmkfmYk8fCRpttz/joE9XYqmv5i8WG3vXruSeznbuD0KmdjT3GbwYCfAPVzzGoIkDcjcLIoewwNOMXgbYImtxLbyevENlGAwGZqelM6esEG1sEg3XfLPb6wiOJgE1VVQ5UyoBDGA9cfEHSF2zlE6tnrs2rqW1po0wdySDtEPxBl38SOwDneR3nlYcYRNIiUjF7m3lULCIWxYs5MYdG9j9zccIi47D2NoEgCcqtkfq8PSoYIDUNe8ScaiYuvSRJG76iGUxiSTm70eYUlgeMZ6KxnqkFwrYysORo5jhqqRcH8GDzhIGh6eToE2hrOMAzZ56EsxxPBFoJH/sVGZ8+3H0On23wtldUoe8aIlKAsoZ6U4C6K1poEovOH5+f8gXfykxtTRgqa9C4+ykpOwA7/33FTo/eZ9X7U1o7DqSTUPwCz9aocOktfHfYCIJQT+36rUEBrnYL3bgG9TJw9fdxO2VpXRcfDW2uCSkVoc7NhF3bGL/u/gDaLQcnvd1Sq75Jga9AaPJyqV6Iy9F2fijPpwO6QOzpDC4k2RzMpPdtZiCHv4v0Eq4Looxtil0+OxIL0zRXkKiZwTltqkMyd/L+x8t7XY4R6eKqvUCSm/ph/8qldPxYv6yYyWbQ53fH7NvJ4nb1qPx+/CbzNTvy8Nl76RNn0aTs50lq1YwTD+K5MhUDrYXEhdMJkwTwX5NPO/o3Nzm2c8Fycn445MxtLdh2rWJmqmX0Jg77Sx/2p7likuias4VNI+ayIh3XuS+RbfyQuFe9hZtxRpjZVx6BhcV7qFI6kkNOKiPT2NIZxJCCCocB8nU5KITenTSR4U0M0ca2fbxciKHZdGRmkHAHPrU0aNTRRebVgDLVKlp5axSCeA88GL+MrbXpHOn+4qQ5/cnfb6W6MJdfJY9jneL9lNTW02DvZOHDCN40FOPVWMmwxhPfUct6ZGZ5MZMZU/zNkwBM07pINZiom3CpbjmXIHBYcdvttI+JAOpO3f/Srnikii9+nay1yzlb0EfHXMuRedxE1ZRSu2VN7E1PZuc5S8zb/QUtqzZBYAv6MWgMQIQJx3c2FlBuq+VEU5BTGEeQz96C09kDG3DsvFGRNOaMTqkvQrudF/B4poVBHxdu5CpgnLK2XDu/mtVKHMUsrqokLzGjK6Lf4iMbU3E521kcc4kXnn7dZJkKsJlIuiM4I/+Kh6zpjLLWcZCfTh/ECUcbi9haGQms5IuY1/7TuKSY/nViCzaR4ylI7UfbhJwBjqThrD/lu9ira3A3FxPUKfj8KXX4DdbSQM8w3O4IjyKldoGWr1NxJoSaHTXkkk4dwaL8GhsPCUMvEEQ9+cbuM6gJdHjwtDaRHv6SFI2fEDd5Dlds4VOMVB8p/sKnirYCmxibqbahlLpeSoBnKOOXvw/Kph+rPBYqGLzt1E/MpfXVr5Ljn4SVn0Y9kAbJreVKv9B3pV+ZgIXO8vZao2hPKaFze2rERoYN2kij6YNw3xwP4dGjj07H66vCUFnciqdyan/8626ibPJWrmEh6+9mWdXvIXf5OWgu4AbpJlyYxiRznI2i2E8Zo0kw97M7ZogDW2V/NrlYFVjMxMuv5brDuxGCg31k2afMpTHI6bwVAHAJjJTmtWqYaVHqQRwDjq+tEN3L/4A5uZ68uOT0fh1+HRevAEPFouV9vY2oomnylNLnT6S7bpw7nTlk5k5ibbBw9AHA8SX7sNfdZDia79FUG/o0c+1u+TMa+582ZmWtv4yx+B0qmfM5+pPljNzxkWU2MIJdLQx7f3/sNvfxDOmNHJipjKz9TOetYzH0tqOW+ZRGTmZea2N/Hbpm2gXXc+N29bROHYqQYPxlG0enwRU6QilJ6kEcI75n9IOp8Gv05G/7TOqmypwaDpxSyeDbUMZHDmc0pb9OAJ2nEEvH5s7sd3zaxKEwFpfRVCro3zedV13xmdYL//LnikrYMZFXRup9JSAL8DibnaPhaJ51ATsaRnE7d3OqLpKtB43htQRLI5IxFcSINvXyCFDHNUdLqwaG+EyikMiyEzp5W6vDdey1wgMG0FUcT7NOZNCavPxiCnHSkurJKD0FJUAziFnWtrB5/exM38rb29Zz4TaRsbpZ6AL6NFqdBQ79kCYwBPt4K5Jc0irLue79/8Ck9lCK9A6MrfHPsczZQVYssu/8N6M2SVnZeOUF/OXsbhmxbHXjfXxp/XU9GV+azi1Uy8GQOfqJGfx74lPTKS6qBCLNNKmNeP3+zFpzJiCdm7vdJEccLHHmESJowJDRxvDl72MzxZOe1pmSG0eLR2h6gcpPUUlgHPEaV/8g0GstRWIDjvPLV/Cvnon9c3NXBW0Mk3Ws1WfjD/gJoEUDjh28b1b7uGOihIa5l2HqRvTF09maUEpJYObj72eN7trl6xUa8xxR52dmS53jbmKi9MLj71eXbTpSHdKl2PVUc+A32ylM3kI18YlsF6/gUpnBBOkRGiNVPj28lPhxoSJv2uz+bjNRbnGy7TaGlJmziN71ZuUfO0OnImDT90QXUlg6SoTzF+u6gcpZ0wlgHNAmaPwWF2fB7uxujdm3w6SN68hYDRR0tbC9SUHMOmT+RUB3tCN45bAPkZ57ZRHj6BDWpnu1XP3gV00jplKU05ICwlP6ljZ4/mrmRxtI8bSlVBSrb07rfH4tuZmQmZKybHXRVUNXXfVcEaJoGbKxWQvf4Unrr2FxetWMrN4N22mMLKlkxTMHPbBhqCfWk0FCyInM9hewHe2fMqzV15H8rb1HLzy1pDbWpQznKWrroT5y3nZ/b5aNaycNlUK4hywvn4jr++K6FZfdnzeRuJ3bWJdziTe3LOTvD3bGOLPYJ4tkonNn/AGw+nQDic9UMkUqxdvwE5rooXch36BJzru1A18haMDuTtHb2d8XAmxRy78/bXPen39RpqdTlo7XGyvSWfC3q4++dMZPI4oKyTto7dxxg8i6OwgurIM2VDN514f93R60RsTucCWzrfcVey0DOV1XzO5MzL5Te1h9tzz05AGhI+nSkcoJ9LrewIrZ8/Rrh/n/lxID+1ntC4nyZvX8Pr4mfzj7SWkkE54MBqXx8Wn/jDs4eOYa9/O0wEtNcLIFp0Fe1gnj9z16Bld/I8WNNPqtUwC7hpzzWmfq7d8MTEtg+QyAr4AS0+jlpI9PYv8u35IVMleLA01dGg0JDTWkJiRzf2l1WRrIohzlvOJMY01bQKf38+KNSu5ziRora0gsptrKnIzEtm97iZcFy3h5UL1JKB0n0oA/djxJZ271fVzYBdtaSN4ec1yRmjHEGWMxagxsce9jahgLMX+WBaYkokPNlCg93DJzAVcMvshEuKSTivOp+xbiUtoYPz8knO6pPHRsgvvlK+G+ctZ3Nh1Qe7Ok5fU6WnJGk9L1ngA/CYrUgY5dLAMjymF0rBYqupqMQoTbuFkgjkLQ2cxT7/yDE/8+Gm03axqejQJeOe92a2fUxRQCaBf63SfXlVPg72FlsgYOto7iLR0DbTGmhJJi8hgv30nRreJApOXYbFR3PK9PxEfe/pz5RebVjBvcAlzM7M4WwO5ve3aoXMpiytkbiasLStmcc2K055K2jh2Ksmfr8U+bTabdx4gxuXFJ/00yTKcWgcLRRyVtgyc7R0Ule4ne8To02on4AuopwCl21QC6KfW12/E5fR2++eaWhoo2bmZxqpyWjs6aZWNRNviARgWnoVJZ6EprJo5yclMvfAqOk7j4r+0oJQaixtLdjmTksvOia6e7jqayNLHZAFdU0kn7J3U7bEBe3oW8Xs+5+cGI68uuIjX3n8HJy5SrWk8oM8g01HMk7pIWlyt7C3MY+Twrv0TukN1BSmnSw0C90PdmvIpJdbaCmILthNsqmfl5+upCcZzta+DBzQ2Wl12csInEReZQKevg32endx37de5bvdm8u/+EbKbNeuP370KOGe7e7rraLXVslVXAnTrqUz4fQz+ZAXRB/ZQrNWyc89eJhNGsd/Bs34BIg130MmwcDs3JEYyfcgwggYjrSNG05Q9gaDRFFI7RweFz+VuOOXMqf0AzmFf6Pc/xcVfBPykf/Afhq56g1aLjVdaGqkKhLNAShICHn6qMxFvjWNz+2q2OtdRKPK4/ooruLr8APUTZ3X74v9MWcEXti4cSBeZu8ZchdliYNSiD0mfv/zYFNdQSJ2eikuuYe+dP0A35woqUpL5sQ5+4A8QKSYQQQTfM8F3/EbW19TzWlgE2wcPw1pVTs7Lf8bU0hBSO7kZiWzcMHD+nyhnTnUB9UMbN8wNadA3ZcP7CJ+PX0QnsH7Zm7jbPLh9Lj6xDOb7llTGuyr5q87GB7YoxsycSY41jPjCnTSOntJVjTJEi00rGB9XwozBnJXVuueKo10r6+s3wuzVPFXQ2a1VxQGzhfascVz4WDYlr/2NqM2l6PQ65mnbiEfwrCaH4ra9eFetYBB+Dhq1jBmSzugXfkveQ08S+NKexwrg8qLbeRDR7kLGhOEfPxT06rIWKvUE0I+sr99IU4sjpGN1rk5i9u/i5fBoNn+2nYnG2YwxTWW0mIrT5eIZKbFrLay1jUBID5lSIq3h7P/Gd6ieOT/kWj6LTSuYlFzGPROu4Z4J1/Tdxb/TjTb/MNr8w9Dh6psYjrgwYQaZKfHMy9nEU/at3f55g8HIuNGTsUWGkRQbx1R/HSsM6Xg77PyQBmZhIc+Sy6990Tza0Ynw+xj7z1+h72gL6fxNLY6umUznMykxvPs5tvteQL/xAJraVvQf7sJ27wvoPgn96WygU6myH6loaQu51EN4eREdQ4bzwca1RMgYWr3NRFgjcXZ2kiLT2de5g4KwYbic+ymaNJPGq2/vVixH+5Mn6bV9uyuV24vxlQ3oNxcRTI1DCtAeasQ/JQP3rbPBGlr/eE+7MGEGqdZCoKu0RHfrC43LmcjbS1/F1FlOh9ZEhSvAtcFSdgg/y6UWb1sJYURSfLiOX6bE8L2oWNLfX0LRjfed9LxH6wXNvmTtGXy6/s/w9hZ0Ow+y8rJxvLpyE7UfNzNseDLfWjiNqW9tASHwzx7V12H2ez3yBCCEuEwIUSSEKBVCPH6C798uhGgUQuw+8udbPdHu+aTMUYjL6SXZGdoFTeP3Ut5cT9mhUmrbKilu2stnjR+hjRAInQZXoJP9/lKGpCdx+433dCuW41eY9unF3+vH8qulBNxe/jMri2/V1fCtmhpenTESf1BiefId8Pj6LLx0WxZzM7OYl7PpyBaOobOYrdx718PU6cupDtTR4N1KtKzmY8sgdD4jYzTTSNdmky0m4myBTa3NGBx2LHWVpzz3zEAsAV+gq6vqPCTsTgwr81iWm8q/31vBo9/WsuqNNG69xsOv/vUu2+eOxfifz8Af6OtQ+70zTgBCCC3wHDAfyAZuFEJkn+DQN6WUuUf+/N+Ztns+OX5zl1Bnl9Rp9di3rGO8fjLDxCiyNRMZJnPYZ9+JDA+Qkz2W+2bNZeLl12MKcRYJ9K/yAvpP9iFNen5QWcuOveu575YAD94eZM+BDTxScohgpAX9x/l9GmPRSBFSAAAgAElEQVS6LYt7JlzDpOSybieBzGHZ3PPjp5mZNoSbcoZRZomn2WNnsGYYQgj80o9Wq2G6LpyNdTW0DB9FeEXpKc97dDC4qKqBMkfhKY8/1+g2HcA3IZ1/v7OeJ3+YyITcMCwWLXNmRPLwvVEsXrsdGR+Bdm9FX4fa7/XEE8BkoFRKWSal9AJvAGon627Ka8wIqRtB63aRvPFDkt76Jxd4vPw9UMDNwX0kBuqxEoYpaKHEv4f7L15AWEsDbcO7X+BMq9f2+cUfQP/xHgoyk2moKeNPvxzMmFFmckaa+MPPU2hvrWTX0AQMfZwAjrprzFVMSi5j1+A/d29jm/BIgqMn87XoeLQRBlzBTvxBP56gC490kRFhJtPTyGc6E0GtFmQwpNM+mJ5DXuP5tV3nUZpWB+6YMNrbHYzMsECTF7HVjthuZ0KaiUPltQSTo9CEOJ42kPVEAhgEHP9cWnXkvS9bJITIF0K8I4T4ytq3Qoi7hRA7hBA7mpvaeyC8/u3o3X8otG4nmW89j87eyjMJKdxvSKcJA0ZLODeLMsZo67EZzXx34jQu3vEphy+9plubtB+9++8vNHVt5LW7mDJOS1VFPTVVDdTVNnC4vI7JYwU77U5Evb2vwzzm6FRRedGSbiWByjkLsbW3cofZxKyRWTTpa7HZjFwSCbd07uFVjZX49BFEHSqmM3FIyOdtrI9ndVHhefcUEIywYmrrJN5gpO1nB9H+5CBiix3xWRvy4WLu6gigqWpGRvRMOfPzWU8kgBNNJ/ny6rIVQJqUcgzwMfDyV51MSvmClHKilHJiTGx4D4TXfx3f9RNKqYGUz1bRlpDCA6VFbDxwiC3eFp4PDMPbacemCfKIP58/BA4x3++nbMGN3br77zf9/seRFiOxei07d7USEwXDhhpITzWSlKAhb08rVr8fLD27LeWZui1r4bEksLTg1N010LW5TMGdjxE0mVnscfB7fQUPONeQ1LaHJ10OlngqiSveR/7uz6mOCr1Y3+MRU/ioYDp5jaceNziX+C/IRL+5iKcCRt7c5mTzNyI5eIWO/2ZKvuHWkDsyFf1He/Bnneg+VDleTySAKuD4O/oUoOb4A6SUzVJKz5GXLwITeqDdc97asuKQ9/XVul1EFeXzrt5AoLyRq8zjGWlN4FNRxtMihof8Ebxr0NE8djKVd3yfjiGhr1RdWlDab/r9j+eflsng/VXsLfSwYbMLGYRgULJhi5OCA16S91bgmxbablq96bashcRG20ifvzz0JGCxkX/3j/ElDCJ1wfV8OOdSfmTwQUQavwrP5SG/lZeCg1j82t+7FYu12UprH0+b7Wky2kYw2sZQIShyG9l13yG2XnEI15P1zEXSlFeKf0wq+i3FfR1qv9cT00C3AxlCiKFANXADcNPxBwghkqSUtUdeXgmcX8+kZ+CyhlSIOPVxptZGgnoDIz5cypxOLx7ffq4NujhsNPKGcPC5bEZ32deYotFysBvtH1/aob+t7PUuGEfsks/45ugIln7g4rmXWgGIiTbw0LRIBu+swPvEdX0c5YldO3Qu79BVVXT3uptCqiHkiY6j8BsPkbDzU65cu4yv+UFPPftNg1gSPR2T1kR+2TqaW5uIiYoNKY4H03NYXFMOLOs3T3Y9Qbi8tHW4+EllEzFXRONJ1mOo8qHb2cEOu5v9c0aRtXYvvkvG9HWo/doZJwAppV8I8QDwEaAF/iWl3CeE+CWwQ0q5HHhICHEl4AdagNvPtN2BxlpbQWRpATsi4llp7yQY8BGhi2K+IYLHnIf4vdHEkPhkZEtjyOd8pqyAGfNX98uLP4CMi8D1g6sZ++2/8c3LrdRkWzAYIKrMy973m6h67CaSk6L6OsyvdO3Qubzsfh93N37GFxZB1ZwreCpvO+F1EUQYE0EIpJRoAL0w4nR1hpwAgK5NbpLLuh1/vyUluj2H2JsWy/55Hq6OA5PfT8tgLcEHhlD3u1aGLN+OJlqtnD6VHlkIJqVcCaz80ntPHPf1D4Ef9kRb54ujxcVCWo8bDJK8eTV2k4Wq2iqkK4ZYXRIdHjsvOvdRaonnblnLsLoq7Bmh3fE8U1bAjNmr+31ph6SLRvOLKSNYt7OIW/0mNFrBmzUB3k01MaGukcl9HWAI5EVLur3BzOjR49hStRmrLpaW1mbcHhcu2UmzqQFbN0tC5GYksrgmnfPlKUC0OREdblaGWbBXubn3O0loNF1Jsrbex8uBIM843BBh7etQ+z1VCqIPlDkK2V6TzrjKh0/ZNWBuqGb04qcIqzhIWXsbv3a6eFbvYmqwgziRTFwwmbXBWrKHZhBZdoCWkWNDisGSXd7vL/5HeYJeBt2YwuseA5sPBLjAZubdK+IoX7MTr9ff1+Gd1OmMBwDMmX4pMtrPltp1NLkasMsW/PIA9/k1hD9xN6P/+SuG/fffhB8qhhAq+t7pvoLtNennxeIw7d7D+MemEV9YRml5gGWrOvD7JT4frFrbyc6CTiKTIgnGqCeAU1EJoA98VhlaL72lvpoRSxfTYrbxTsJgFna4WC9SsGjgVn0tXzfXc1FUEvcGfUS2t9KYO42g/tSzYpYWlDI+roRUa8yZfpRe4XV6uanZx88DcOMNiWQvisMcoeObVe2Y/vI++Pp3Erh26Fxio220TQx96MtqsXHh7LlglnSa2hhnbONpg5lIaya/DOh5KiKWyvhBDFn3XwZ/siKkJNBYH38mH6PfEL4AgdxUJtQ7+Ov1Saxa7+XSr1cy9/pKdu+XzNMZ0Fa3qFlAIVAJoJe9U74al9N7bPPxkxm8fhn7cqfz911baSupRY+ZV4KDeNk/iIPaSBY5C5nnOoDdbKVh3Axcsafe0nF3Sd2xQd9zZfeuu4w2Du7ooP6HiRwcH6Ayzc3L3g5+PywGg5SY/rWur0M8pfFxgxkfV9Kt9QF2exuDjGlcGj2BuwnyL9tIftteRF2ngfUbC7j73SX8LTmdsMoyogt3hXTOZqfzdD9CvxFIjUNT2czmi3Nw/LWCO8s9/HZCJMtvSOLhGh/Xa43I0akEs79yuZFyhEoAfWDjhrmn7PoxNddjtLfwSkUZhwKDmIKGkbYMasQhykUsz/pTWRU2ijVaP8G5VxNedZC2YaFd0LV6bb8c9D0R0e7kEqHjsVYDP3+6kqKDHpZ/6OD19xzExAV4KdqC7vNiRHNHX4d6Uum2rG6vDxg8aAidWjtjXYfZbRrER235ZDCGoZossm3jGW+cybKPP2RbRg4JeZ+d8nwZlTHnRaXQ4LAEmlw+WvYc5M3ZFmpGadi3uZl//LWS39fqiP7ZjeBw4584rK9D7fdUAuinjG3NOOMHUVh6AItpME6Ngedch3hC08HEwFpcvq2sD5YzPiWWe/0+7ENH4guLPOk5j873N+i7t/F4X9LtLEM3eTjGuHBSh4SzfackrV7L0vnxPDfJzM431uObNBzd1pK+DvWUji4SC9W4nEkYYvSEdxbxWdCHSVrRY8BgNGA0mDBqTcQGk1lZX4OppRGt++Tz/RflDD8vNoyRwC9amng8zs8fp8Uz8+7BzF08lOrpEczJzSRr+XbcD8wH3bnz97yvqHLQ/VTQYETvdDDMYuH2w1toN8QR1LhIRxJuTuYS72Gy4kdgDnhp9nkpu+zU8+FrLG4m99Mpn1/J6UFGWrC3OXhgRjy2f9dCvIFAnB68QS4/WIt+9W58V3evHPO5QK838OiDTxD1+0dobjvI7GCQMeZGpCWa4qAXl8aABg1+vw+p0YQ0DnA+qK5qplI4if7LCLTLmoh9shmsGn5Z7eHjlhKcrz5CcHj397oeiFQC6Kccyano21v4mdvOH/QB1npa8fs85KBhvKeCzOgoZjZWUznrckq/dkfIG7yca4KJkeg3FTErLYn2J0vR/TiVungvbreXbXkunhsSxmVGA/qVeXhumA6m/lUa4kTaJhaCO7QpoWHWMLJShvK6gBf8jUidINnXxszOYnaYBrNDW8/dyRfg72ghYDKf5cj7B51ei88PwQQj4t4UAg4fwhFkf0knK5dbuURd/EOmuoB6WajL8qVWh2PQUAa5OtkfHYXJbyFDjMWtGc126yWUeST707Mwtzae13d+gdyhiJYOHtCZeb5Fx3Nb62locJG/z8Orbzu4YoSW3fsP4R83FP2G/X0d7indlrWQScllIe8pnLhtHSCp0WpZagnnF+17ebCjmPuFDqtzDw8NimF6VRkNY6edtzcBX5aYGEVSyiCWvF1HxaF6ymvqOdDUwJ/+VcOU6bl9Hd45RT0B9KIX85exvSY9pB2/AISUtFvCeOPAHrzaaBq0LmoNUcQEndQHrPzaHMmfDTosjTU4E1LOcvR9RKvBc/uFDLrjOYZdnMOST/aQt9dPaoqJf9yWwvDVzfwsRYcxPYGczwrxzev/F4CosNDu1DUeN4k7PuXV3As4lL+X3/r0bI2ezafeAIX+/TROncl9B3ZRm5ZBQ+60sxx1/3LHXZfz3Zt/w4YxBtKzjWze7kaj0bH5s91cd+MMxABJhmdKJYBeNmHvJAihTLupuZ7E7Rs4nDyEJy0JXCKTSJUOsj11NOjCeD08hw53J4GIOIT/1PPgn7JvZd7sTcRYzr254P5RgwlkJjOysJIXDJLUNCueKjeVBXV8MD6M5jBBtdfPaEd3ii70f5EH99ORks5bG1YTb53GJwgmOMuZ72vCF/RzaNcW2sZMpG34KNAMkAFPnx/DB3nEPbOSN8N1xLYKWvMD3HbDIJKuiuO6Ow9RXFRD5ki1BiAUKgH0R8EAw//7bypGjGZ5/g4+cjmoIAyjiMdiMnGrrpoLHHtoHnkVptICPCHUhYlLaGBuZtY5M/f/CyxGZKSV8qsnsXbbGuYmG/jrp82kzzRjM7vZuLKdUa59BFNCL5V8LtA7O/BERNPU3ECGJZfDQsthY2xXl58M8mnnh7w/Ygw697k/tz8kPj/mp95DajX8O8HK6EtjmDsrgpRDQUzvNSMDkuHpRupqW1UCCJEaA+iHIssK8Vts/LzVzpQ2NxdHTaScA7TJJmqc1fzJb2eipoMbtRrsQzPxd7M2zDlHq8E3K4v5AcnmRit3vVTN95+K54ffieWGr4Wx5PlUkj7fS+Hg0AuknQu8YZGYWxpITkihxdMAgJSSTlcnZc2l6PUGRG0FXlsI5WTPA4aVeUithh87O9lSX8XO3e3odC4q41y0PBBP8JNWmra2Mzzj1AsilS4qAfRD4YdLqRk8jLyKQ+yOyOU7riq+ETUKYQnSbmhGhvkYnZbB4L3bqZp1eV+H2yu8V07Gsq2UR7MzyMmwYbFoqSv0ELHGR/bTzUwIk6yp6sZWjH3Mkl1+ymPahmVjqaviG7MuoSywnzpnFVX1hznUVEqxcy9JDsHhde+zyxD6ns8Q+kSEfkVK9B/tYcvQREoOFPDMb4dwuFqy5N12BJLPCpr5v4YgXw+PY1DKuVHipD9QCaA/kkH8CDRo2GUeyofGdGY7qnjW38I/RJCnHK1ogUOXXoMvbGDc/cnYMJy/uI5BFU08tM9Jxm/aGPr9BiKWtBA0aGgcZubyD/ZgeHNTv58Vde3QuSFtIi91emqmz+XKfTt45PqbqdAVs9u7mTZDI3Njcnnc7+Vdv5mf/vEnvLPiP9g72k7Z9oPpOWyvSefF/GU99XF6h8NNe00Ljz63lM4OOz/99UH0eg3V9Toe+UULv3q6jYahOVycru7+u0ONAfRDnYmDSSrZS0R0JAUHd1FNHFvJwBp0YtcdZvyCa8mpKqU9rf/thnU2ycQozM/eyfopjzDSFyTw3QSaBks6tJIHHm/kyium83BeGRj1eK/u34WiL04fwfaaUw/eN46dhhSCKzetxuTpwGVLJxkwte/hVV+AYu0oUj0Bdq/dw468rfz4kV8RZjv5Vqrn4v4Abe0uqvYc5MdPJTJjSjgx0XreX+3gxdc6eOvfOXz3JzXMmp6FyOvOdkiKegLoh1ozx2KrqyLD56ZSllIjD9MiG8gXhyiQLUxuqqF9yPCQ7/4Xm1YwPq7/l0oIhc3jZ+GQZObXwM8+b2P555389KkWZk+PYmv+dj4cn45h+XZwe/s61B7TNGYq+Xf9iC1R8dRoTewwDeLPfh85YjDXSxfjZZCR1hz0dhOfbF7T1+GeFR9vLEQ7VM/8GAtt7RJ/QHLlZWEMSdHwz5drKKuA8Q4X/nHpfR3qOUUlgH4oqDewZ9YCbqoq5yfho7jcLJhpbOV6WxRPGpKwFuRRcdHVIZ1rd0kdk5LLuGfCNefmDKAv0W0pInLhBHSRYaSlRRIeEcHvfjmCX/0knR88GMeSj7YQGJ6ILu/UfeznEqnTEX3p1WymjSkd+7hB+hHChFMGmadp4FutG8khjKKi/r8Y7nS0NLfTPDUc03vNxBhslFf4qKrxYjYJ/rXEwVN3X4l5S7HaArKbVBdQL1lfvzH0HcCApsTBHNabuKVjPzoC+NGg99TTrNHxfFwSC61hIZ3noMfBqHOo+NupCIcbX4QFj9vDg3dnfGHBz7ChRqorqwlOHYs4z9YEAMzOmcBl5pd53utgZVCQHbQhBGwwpTDdHODG9h28ZTs/F4RlZKbwu6VOKvEy9roWgpdEE3l1NM074L0rp5P63jZcD8xHxp28+0v5IvUE0AvKHIUUVTWEVAb6qNz8raQadNxiGsw0TSTTpY7ZhiR+aIrgdk2A8PIDZznq/knGhmOobSUxKYbdex0AeDw+Kg43sOKDwzQ1trBh8Wpq+vkmMUC39wdI2ruN6AuvYG98Ijq9gWZtLTZ9BHhhVWs76/RBbo44/yYFBBvsbHrpQ3JTgqQ9FIH2e9FUbW/ls9uK+Za0kZSeQOdTNxMYN7SvQz3nqATQS/IaM0IuAWGwtxJbmMeBsZOZ1VnC77xe/hCwcoXbS4GnhYOXLmLwhg/6/WyXs8E3NQNdQSV3L5rDz37XyLpPW9mzp5btee289V8H79ydxGizg8deWI7H4+vrcL/S6ewPEF24i022cIRTxyXJV6G1aNgd3Mh+dlIs83FMn01mffVZjrz3aPdVYvnZm7i/+RwL9pfxt4CWOZ8HGDTYzIS/p/H3zEg0/7gH740z1J3/aVIJoB+K2bcDv0bD+K2fYIzI4T3rEFZZ4sm2RvECJj7d9TlCBrHUV/V1qL3PasLz9Wlc8mkhj93yNf78god7H62j7R0nb0gtOc9XMyjewE8P11H90zfA6enriL9Sd/cH0LmdVHpcmANWbAhutabx/chR3BqZTXbYKLSxyefNqmDd9lLMf3mfyjGp3G/R8uchGp4bF4YzO5yUVztIlzYumRNB0YHzJ+H1BTUG0A9FlexF2Ft5VGvG0XGIMBGJDy9rNX6utmVw+f483BctxNBhx5k48La9810+AQw6pr+9hV/59cRoNQyt99EUpuOfE8I4EKMjYNRyXYMdyy/fxvnz686JMtGn4g2LJNNoxuspZ1FnLRXGGDo0Zkb4WpnhKUfa00JeFRzwBXi58H1uy1p4lqM+DT4/pn+uZtdVk/jhP99jwYWCYak2DlW4+MabzSy+OZlBi2s47DeQMy20sTDlxHrkCUAIcZkQokgIUSqEePwE3zcKId488v2tQoi0nmj3vCQltprDHIpNpNXpZZSYTKYmlxzNZJICabzdXkxtTAIRh4rxW6x9HW2f8V06Fsff70I7JYO2liBvzozkvkhJwgIjCy7U47c72X6oBqqaMf/2XXCd+9NCm3ImMXf7BiaZtdyrCfKdzmoebdvLXa5qnk1MZGbBDtzRpy72l5uRSNmqK3E5vZQ5Qt+ovrfotpYSSI3jbys28tj9ETxw12CyRpi448Zwbr7Wxt92tVNW6kRTJph2wcBaC9PTzjgBCCG0wHPAfCAbuFEIkf2lw+4EWqWUw4Gngd+dabvnmlAH/AztbfisYcjiAjJMI5AECcoAAFHEEggGMGdkYWptwpGcdpaj7ud0WjKNej4aPpjfrm/mr7+J59IpZiZvcPAHi5YIrYM90Vb0a/diu/ef6D4JrQZ/f2VPyyS8qgxNeiYd0k+KTGe0djKZhpFktbTQYLFhaaiGYPCk59ldUkf6/OXERtv65dRgTVUTrUnR5OcfYlSWBa1Ow6BBcTS1wIh0A+++38yWznAev3Uuer3qxDgTPfEEMBkolVKWSSm9wBvAVV865irg5SNfvwNcLAZQwe7jB/xOlQREwI/PGkax2ca9tBAdbsWNE0fQTkDvZ1RYJFMqSnEMShswG4CcjK66hcxrZzJtSjROt8D7xxY0kWbsvxxC++V6bv1sJ583tbFl3jiMb2xCty20Adf+KLJsP4fnXEFl4R7+FRQ8YvNyj7WN38saxgYieNwciTc8irDKU6+G1eq1/XJr0GAwyOr1+bz27HvER3m4+a59/PypMoRGR+rQRHTGSEaMTGXRwqnEDFI1f85UTySAQUDlca+rjrx3wmOklH7ADpzw/54Q4m4hxA4hxI7mpvYeCK9/uC1rIdoQ5uN7wyPRety0zllArXDyffdO7ghr5/oIL3fqD/OYp55gWiYtWeN6Ier+Txr1xFmMuL1G0tzhRAYNtH89igAuEPDALbFkpcJTr63gwLxcDG/1r1pBVpOB9PnLQ5oJpHd00BoZwzOGcN6Iu5CDxgTKjfEsib6AFTEXUNRYjzsqFoPj3P138983N7GjtYzvZOt45W9D+b+n4/F6XDz7YhUdDj/Pv9zKtZdPR1dQQSA3ra/DPef1RAI40W3ol/+FhXJM15tSviClnCilnBgTO/CmdkmdnuZRE7iss4P1o0fzA7OJYr+DRk8NH2maOXDTfdg62mgcO/WU5zr6qH8+808cRm6rg/pmA/tfqsE/IwKH04ndEeSDNU6uSTASNS2CW74Rzmv5pQinF01lc1+Hfcy1Q+cSG22jZPCpY/JbbYQ7HRhNBmqCfgrNg9hvHkSbzkqbp4mkpBSMbc34Qlwk2K90uDC+soERv3yD7/s8GIqcJD1ahe2w4Gvzbbz0nzquvvUQqenjubGxHd/MLGS4pa+jPuf1RAKoAo6fipIC1HzVMUIIHRABtPRA2+ecD+MPn/KYmmmXYmtt4q9D0li06CqKp2VTMXcGi77xLa4/uI+6ibNDGuz7TNuE2WLonzM9eojv4jEYdx7kT7dexp5tQX7yYiMP/biBh3/axI9vTibpk1bqJ4fT6QxQWlKJjAlDOPpXOeQYS2gXsuaRucSU7OXqixZwwLMbu7cFKSWN7loqKOGmSRdgcLTTPmTYSc8Tyt/B3iTsTqw/fYNAh4vfROk5/KME6l9KI2jTkvjTGiZskkzSmXj1xgU8VtEGWi2eW2f3ddjnhZ4YQdkOZAghhgLVwA3ATV86ZjlwG7AFuBZYJ2U/eg7vJRenjyDg28QzG6wnXRQWNBgpuu7bJG5bz3UF2/k6oG3x4nR1UjXrctoyQltQZskux3oeTH88GRllxfno1Qz/4zKGZwxmepSNJ7bk85frw4la1cISHbz0zGGSEzXUV0L+/kZS7ryI7lXQP/viEhrgFNUrfGGRNI2ayLfqqjBeuZD3Nqympa2ZlMTBPHLhzczN30r19Lkn3R7ymbIC5s3exMXp/Wfw1/japzizU7hv+z7sBi9bt/+/9u48Pqrq/v/468xMZslC9oVsJEESQiAsgoJEEdkRUXDFXQvU1qVatWr9FirWutWldafFoqjFXUBBFkERi0jYw56EACELCdkzk8x2fn8El18fSMAAk2Q+z3+YmZyZ87mXZN5z55x7bg2XjQ8h/74uJO6KQD92gKvMIUTbm2n67Vg8GfEy/nWKtDkAtNZupdQdwFLACLyutd6ulJoF5GqtFwJzgHlKqXxaPvlf09Z+O6K04EyiIg623pCWECjJGUvJeaMIsDfiNZrw2E78kHeOdRGD4gu5IvV/x+M7H29GPA3P34Llw3Ukv7qUu5ITeG9JCbUDLRQ1Ovj3P2KwOxRJ+8zkvlDCK++v5p77r/B12T8YHptDfvwCNrmeRa289rjLhRRfcDEJaz7n11vXcc3AwThDQgmsLCMo9yuKc8ZyJGtgq/21q9k/9Q4Clm9hu9nIfYX5nHWWlXdmV7OkzEXK+UF8WNBAqNHKBdcOp+k3Y3xdbadzSuZQaa0XA4v/57EZP7ndBFx5Kvrq6CIDA8kZtown8hp5MPTc1p9gMOJqZX33nzMiLf0XPa9DCrK2fC3Q5KTPoSPsTx/Ci8/N55mZYYCFlO1uLK8cYFBmELvmrsQwsCfeoT3B3D6mEU7LvpQ3dn6K46J32Hy8EDAYOHTBeMoHDSNs7zZMTQ6OZA6g4JIb8AYc/2jvhcI8coYtIzKw9a8Pzwitsb2yFENZDcsjzASMCaM01cbF53ah4YNyluV5+LAMnrt1PGe5Pa0dIIlfQJaCOMOGx+YwOiOz5ZD/NHmidl2nWf//ZDVPHYEnM5FLV2zlwSbFeRs0SXcewvLkQTzjonBfFc0ms8L4ZR5B976BKqv2dck/+H5piILmhlbbum1BVGYPpuyc4VRl9m/1zR+gMbKRjMQYhsfmnIpy28y0dg+GXYfYFRHE/MrDVGkH3xRWc/PSCo7ckcRdIQFkhVhJig0Fo7xVnQ6yV31kQPReXig89ScmzbEuYkzvbxidkdl+DvPPJIMB5zU5NLwyndqhmeze7UDHWTgyvwf54418sO8IX+Pi2R37sKMJuelFTN/sAs/xT546k2oGnvqzc18ozGNM729O+eu2hXnxRvLH9KNs7wEWPJnE1OvCmPVANC/8NYaZbxxiVZCRi5wWuu4pwS0rfZ4Wqj2PxfYbkKa/WP2or8s4LVaVr/lhieh4u5XLe5/1i1/r+znkNQN3Mii+kGnZnf97/xNRUlzJgREz2DsqmNABmiPVXjZ/1sjz0RYONnj50hPB9C5dMAVZ0dYAHPdNxNv9xJbrPp3+uXUBHpeHwiUTAdr8u1ES2ETOsGXt6tM/LjdN4x7jOlMzOaXljAtRBq0AABk8SURBVIq2EDgjnuBQJ4GBBh56tILGfcHMiwjHHB9B499vbTdf17V3USHXb9Batz4YhASAT60qX8OBqhqcLk/LxWJWtkyeOtFrBmzeW8bXxkpyhi37YVXJzjzl82QZDlRi+MsHXHG4ktDAw4zoE8INWxupvTSKWWuq+WJ1DWPMNoYFd6HfPZPotmg9jY9fh472/Zr6b+z8FACH3cmar0ZzvifqpH4vADb0Wc+g+ELMAUaSI8J8++avNca8A5jW7kE5nHybX0LY4nUUPRFPUpwH76tVHM5tYuCDKdiyrMx+uZJx3mR6bS2ifsGDeLtF+672DkYCoAN6Y+enPwTBmq9Gt3rtgO+v82sMMBIeYmuXp/X7mmFvKdY5X3BHUy03TrIztNCB2+7lipWVXHNpEAP6WogvtXJg3mHus4cz/5IczCZTu5pjvqp8DfnlLSeJrS9J41dNlxy3/Yd5+aSNW/jDWeft4WhQ1dqxPfkJOF3UnN2dSpeHz5/7gLtdDtxXRXPgsgBSu5n56MkKYrZ7OTs6gMVr7IyZOBRLbChN90709SZ0KCcTAHJM1U58/8l9VfkaGLaMORXHv6Zty1c9k89EaR2WNy4MQ1kNZw/pwdKV35BT2sia80Lplmhk8oQQ9h90EXTQRep5wcTkVnPv4vXM8ihs15+Pob4JbVAQbPXpnPPhsTkMj/3+3gLmlCw6bvsB4/YSFRHcfj4QaI3tyU+wd4/l0aJDbHxzEZYATUOYk+k3xRPyajmR3aLYp1zEDAti5vpqTKVB3DZzEoFf7sAxbaSvt6BTkwBoZ4bH5tAtaCejW1nlNi3Y95/s2r0QG+4BaVxpDmBaQRDbd5SzMtRIfKyBA8UuogOCaV5exJE7w+jrMLBvTwX2JdVUjnqEXsnR4NV4Y0Nxjh+Ae1iWz08+mpZ9KSPSWhsgbl+D/6avtmMoOszbpYeJ7VrJordScDR5ufyGrezr5SUjpwsRL1RgfSKVNUVuwrok8PzVF5Hw5XZc4/vj7dHV15vQqUkAtEPt6Q+4o2u+9nxCZsznnyMGUV7ppGGPZr2ngjtzArG8VUpVjpX4bBtb59TwmDOArvEmbmyqJjo+jfDILlySHEfW4o0YC8tpvuUin4dAR/ndUFUNWGcvJ2DxRhypMVjX7+S2bDOG10uw3RzPhTnhvP6fOqZeF0VWkRPHa6Vk5tqZmJlKUEEZTb8ehadviq83o9OTaaCiU9NRIdgfvYbAxmYyvJpn6tzMOGhk20NF7MyysK+vlT8/XUm/Ck1CpZPaWyIJ7afBsYPk8Dxm/GcB/+oeg2nLfoybi3y9OR1DvYPAme/S2DWM1dEh/Cl/P/+O9lI5Mx4dZMT4ZBEP/CYZj7ZwxdRi3t3pZGZdCKX/vBPDZ3/E8dBkefM/QyQARKenI0NoumMcdf+5B096An2uu5D1107gtoUe7v5TJQmRIdzlVngiTVQPNGEwKMaOiuCGq2N5/R9JfLRwFWVDMzAv2+zrTekQzEs24Uzvyu2rN1FtLuP+sWaMRigsreXgRSZ0FxO2DXWkpQQzZcpoLu7fk1lv3s+FI/v6/AjL30gACP8RGULj324kwGziN7n7WHBef6ZXm7j2yxqMFU6OPBzPtn1O8ovc5JwbSmOjh/Wb6omO9PB5eS2Gfafv7O3OQmtN40freDa/DKOnjAmPp9J1r4N7r4/niReqWbG6hrzkALa+UMzSr+BXKV0J6JmAig3zdel+ScYAhH8JsdF094SW76h3l5DeNZybP/mSGfZm/vxwOYcq7bz+Qk+25DUw8/ECsnuZCQ/xsuidJVwQGkNs6z34JVVWDbtLePPfy7ng2zw2DQph6CADRXVVpIwIZ+KGehIuj+eht8pY5Angr/Uh/OvWkcQu34J9xlW+Lt9vSQAIv6QjgnEPSSdrSDqvTh2J/b43uK9bFDNW/BelYObjBTw9M5r07gEUl7iJXq2Z8+oh7M8u4vzMRM6pqidgSxHK7cWTGoNzTD+86fG+3qwzTlXUYp29AuO+crZ4NKkFe+lv0cyyKd6t8BAdqSgeCN0iIzl7YQV/LPeQdlY0yeUlNO8pwT7jKrzJUb7eDL8lASD8ntlswjZtJAkvL+Xumydyw28/ICPNQESYgeISN11qbex6ZS+7U00M3LMS25xG3o6KJOnGUShbAAOA8GcX4RqWhXNKO1lq4RQyHKjEuPsQKIWnVyLe+AgAVHUjgTPfo+a8DP5pNTB//goS4iAmOYT+Lk3fxQ0sz7aQlWWhblAkHxxysqk0hL/1iMMxph/Nt17k4y0TciawEEcFLN6I5eN1rIsMYXnZZu69LZqgbU3s+uchtgyyMHp6GMGPVeO+N5mZ7x9i7QYv550bQe6WZn47biiTv9iBu18K7vMzcZ2XAYEWX29Sm6iKOqwvLcFQUo2nfyp4NaZNhTQnRfHpWXEYPlyDzWLhBUcjF53nZcgALzaLl4Xzarh8fRNn9QjiNY+X2XvtRESGMWBgTx4a3JvY5VuxP3kDOlQu6Xg6yJnAQvwCrvED8GQl0euT7zj8UQPKAmpQF/7PBq/dH4X3g1r00DBKbHZ+Ny2c3C1lPPFgV+x/P8CGFxZROnoQ0dv2Y+xiw/L2apqvPR/XqL6+3qxfRNXZCfzzu9QMyeBlm+LrxWtQCoYOySZy2SbO/qyatBDFwgtDqfiskv59upPZ00yTvY4/PRnHXVcf5JkaF9MqXXjCo5k6dTzBW4pQX+/C8acr5M2/nZAAEOInvN2iUb+7GHtqNJNmf8SEXpoCu5fiUhcZBR7c14dgNjvoEmLE4wHDq8UEW4xsmR7B7e9s5uWqZl4LcHLL1SO58OPv0DYz7pyOcfIWAPUOzKvysLz5FbrezvINe0jOMTH3713xeBW/f/i/RPTwckdSOIaV1Uy4Lozs8xWPPHOAj+b1wd7o4FCpk8DeFu4vMnDjHhdXXH0uNt1yUp6nb4pM9WxHJACEOIaLJ55D7+wUvli+mfgkI1+ubaa/xUKdCQwGeOejWi7rHYwqcFD2QAzmJYeZMCaYYSVmgq438/CLH3No4EC63zWbZ9IjycruwZQbRpCY1H4HPA1Fh7H99SPcWUnUNDSxMD2euqLt/M6h0QuP4J0WT3SkYtQFVhoTQuny7mHMLgPdksxEhBko2NdEZkY0DfUOdhfWcXGPfvROBfcDk2j29caJY5IAEOJndEuJ4dZpo5l42WDuu+slkitrCX2jglcq7TQ7Dbw9LAJPRACVtY2s+a6J20fGQVUN/YeG0mtpJfO+WcVb3U28MsxN8Vdr2TN6NV0nDsY6ph/uzERUnQNCrHi7hgNgyC/DlFuAanbhTY5qGUewtn6lL9weaHaBzdySTifJ6XSz9bt8sp5bxOEpOfzh46/4v8L9vGus5PzBUH51NLFza1CfVRIUaKTZqWmKMRASbCRsUzP5PTUlZS6sVgMOh4d579cSHJ7ILV0j8Gb438yojkQCQIhWREV34bW597HxP2tImLuKzMF9WZeXx47cehqTAnj8nVoG9Qtl8H4H3hEROJq85G6q5amHY4h/phq9upqoq2LYllLHgsIybnp6AcaSKpzDe6OaXGiLCdXkApMR++B0nJYAQtbnY3lrNU1TR+I+79grAxr2V2D+5DtM3+WDUYHJ2DITaeIgdHhQSyOPF9N/d2FevhVDSRXaHIB7cDrOsf3QMaF89+0ennpsHuOMDhwVTdz/aAFTJkcywBzCvReEsWjTERpdduovjyDklTImXBHDrGcLGRYfhs4IxLTkCDt22aiqt/Cruw+hNfQf0JN/jOuJ6avtNP561Bn8nxInSwJAiBNgsQQw5ObhmIOtzFy9g/ybLiV/8QY8RU2EHGnmQY/C4NJ4xkZyYH8ToSEGMrc0Q42Lw/fHUhPRTI9qLw3z8niqdze69+9G9DfbWTFhAPduK6VLdQNvpkUyd95ijEZNVHQk91w5gnPmrsIRbMWT3e3/q8e4bT+25z+jakQfFg7Porimluy4SEbanZgfmEfVQ5MISozE9reFqIYm8vumkJsWS6TZRE6Tk6A/vs3hqSN5YtZcnnkkin4rwdUnEkNTLc/NrqJhfAzD7F5eKvGyeEUDoy8MwGpSHPy2DrszjI9+f4iQVCt5WnFpbj0rxw9CD0jD6PUSvHEf+ru92GdcCUFWH/2PiRMhASDESXBeMQRvYiTdP9tIel0Txp3FZMVH8PrGKobOSCS5xs269fUcLHQS3FxPc6YNe6yL7okWjLMO8+mQLnxYUsa4QY3c4fJgPbyJVdsbWd47mTs3b2fS+1mERJv5Zl0dM5/9iJdvmUi3D7/F3icZU24BAUs3Yzz6VVHZBZn84d+fkT7cSmZqAEvX2Hl0QyMTmt10H78ZZ1I047PP4qWQALbNX8j5g20s3+Xg/s119FNGbrpqI5EDgumVEQTLqvCaFJkZFoaeY2W5zcCkb2v51+Wx3PN5Bf/41wEedShKx3ZnwW/7Erx0M2uuGkKPhEh6ZcQTsC4fY0EZGA003Xwhnt7JMtjbAbQpAJRSEcC7QApQBFylta4+RjsPsO3o3QNaa7nEj+iw3IPTcQ9OB4cTyxurSD5QSWp2Ms/PW0dlRTk9M7vxuxRF9dYCqm8OJyEygL2rGije2sTuUUHcNtLK+YNtRO4yE/txBWuvDWfton28NCkGtbURPdJCdlYQcVGl3PriBzxd0Yzl0BGyugRSPCSdvfZmumUmsnjvAZ4w1hM3MALv0FAWL9vJ5HFw/aQEUp4qp/xQJbf+t57QHlbem5NCeYWTlfeU86e7g8nOCiT8jTqG7G7gmRcP8FCqDfOeJjxxiuAgRZVSeB5MIeofB7l9j4tpQwaQs6cEjzahNxTgeGwKg+PCf9wnOT1x5/T04f+K+CXaegTwIPCF1voJpdSDR+8/cIx2Dq11vzb2JUT7YjPT/OvRmD/8lksWb2R891T0gCCMheXoQBtbUhK44fFyEv5t5FwX3HJRJIfKm/nDsChcLi/arFAOL0FJVhLjjOgeNgwlzTQ1e7nj/t0kx8MNVwaR8ayd7eu3cG16CnV7d/L7ICe5RsUrpbUMfjiV+HfK2Ob00Nzs4v7b4yguc0JXC3FuTWaCAaNJY7EYeP+Tw0weH8g1k0MpLHISMjKC6wwupnx1hKmX9CTmqf10GRTHu58cYtxoGwu2NPAFZkITw/mTQeHJSKDpzvF4MuLl030n0dYAuBS48OjtN4AvOXYACNE5KYXziiE4J5yNaXMRyuHENTwLb2QI/f/4Dtel98fZuImZo8MwfX6EcJeHffudJCdZMe12oBOtxDq85Bc5aTriIshiYOnKKqIi4K5pYRhcgURUlNH70RT2/qWAea9l0WdjPd5AA+FXm/m/Vw+xeHIcakUV6d3NaA0GpcCtwahI7x7Apjw3AEUHHNx4pe2H0s0WIyrIgtXsYu6SSganWuGWQm45pzeOqO7k7q5n1LnxjKyxYyooo3HWNRBi+7k9ITqgti4HHau1LgU4+m/Mz7SzKqVylVLfKqUuO94LKqWmH22be6Syro3lCXGGWM24B6fjGt4bT68kdGwYnu6x/Doxhq17Annk0xpK19cRrQ385bkjWMoCUDsacUyJoXheOZndU9j8cil5IUbWrq+hX+8AGhoVkd85waJw9DExbIiNA8XN6OxgjOvqyM4KIbGrgQ0WRXKdhw1bmzhU7qKL0Yoqd4JHs3eDm6KDXjweTbckG1vymmhs9KK1AfN2B8ZeYdQ0BHKopgdLzNkYHpjC1LR47v6ukFn7qpmwajvGLoHy5t9JtXoEoJRaAcQd40cPn0Q/yVrrEqVUGrBSKbVNa11wrIZa69nAbGhZC+gk+hCiXWmaOpLwGfOZO3owixSsKlzPFeUu+qX2YNe0TcztE8qqv1bw+7A43lUWCtJ7MGuxZvcON2Zl4LquFkxLy9FJVrTWFB10ExMVgM5qmeIZl6dwugy8MreSuzweDjjgkadqeDKumcqMQDbucpC1DeqGZHDj7fvpm2ng1Tdr0cCU/jE4/lvMjNhgRowdwr0PXPlD3Q6AxiZUsxvdxQYmo0/2nzj92rQYnFJqN3Ch1rpUKdUV+FJrfdzLmSul5gKfaq0/aO31ZTE40dGpynosH67FtHYP2hqAcdsBlNdL3WXnsL9bNFFAVG4+xoLD6EALnl6J1Hu9bHxjBb0G24j7YwqGl4p5L8LEI4uqWLu0HyEhJihvpvHhAuZvczFsWH+am12YLuqD6/1vKNxfxpvdQhk0uA93HG7AHBnCxrRY1lY14K5tJOjrbfTYdpBP0yJIu34kN9w8ApO8yXcaJ7MYXFsD4GngyE8GgSO01n/4nzbhgF1r3ayUigLWApdqrXe09voSAKLTaHah6uxoqxnDkXoCVuZhqKhFB9twDc1oWSPH4cSUdxCcLrbXO3jyrWU4GmvoV2pnuNHGl2P6sXXLFsYMt1LfCGtW2Xl0YD8GLN2MO7sb3tQYXCOycZ9z1o+f2p1uApZtwbzi6IlglgDc5/agefwAdJpc3qYzOpMBEAm8ByQDB4ArtdZVSqmBwG1a66lKqfOA1wAvLWMOz2ut55zI60sACH+mtaastBpzgImEt1djKK9l79lprKyqJ8hkZEyQlZiVeTgnn4trzAlMstNaZu/4gTMWAKebBIAQR2mN6eudmD/fjHFfOdpowN0vFdfFA/BkJvq6OtGOyPUAhOhslMJ9QS/cF/TydSWiE2nrNFAhhBAdlASAEEL4KQkAIYTwUxIAQgjhpyQAhBDCT0kACCGEn5IAEEIIPyUBIIQQfkoCQAgh/JQEgBBC+CkJACGE8FMSAEII4ackAIQQwk9JAAghhJ+SABBCCD8lASCEEH5KAkAIIfyUBIAQQvgpCQAhhPBTEgBCCOGnJACEEMJPtSkAlFJXKqW2K6W8SqmBx2k3Vim1WymVr5R6sC19CiGEODXaegSQB0wGVv9cA6WUEXgJGAf0AqYopXq1sV8hhBBtZGrLk7XWOwGUUsdrdg6Qr7UuPNp2PnApsKMtfQshhGibMzEGkAAc/Mn94qOPHZNSarpSKlcplXuksu60FyeEEP6q1SMApdQKIO4YP3pYa73gBPo41uGB/rnGWuvZwGyAfgPSfradEEKItmk1ALTWI9vYRzGQ9JP7iUBJG19TCCFEG52Jr4DWAz2UUqlKKTNwDbDwDPQrhBDiONo6DXSSUqoYGAJ8ppRaevTxeKXUYgCttRu4A1gK7ATe01pvb1vZQggh2qqts4A+Bj4+xuMlwPif3F8MLG5LX0IIIU4tORNYCCH8lASAEEL4KQkAIYTwUxIAQgjhpyQAhBDCT0kACCGEn5IAEEIIPyUBIIQQfkoCQAgh/JQEgBBC+CkJACGE8FMSAEII4ackAIQQwk9JAAghhJ+SABBCCD8lASCEEH5KAkAIIfyUBIAQQvgpCQAhhPBTEgBCCOGnJACEEMJPtSkAlFJXKqW2K6W8SqmBx2lXpJTappTarJTKbUufQgghTg1TG5+fB0wGXjuBtsO11pVt7E8IIcQp0qYA0FrvBFBKnZpqhBBCnDFnagxAA8uUUhuUUtPPUJ9CCCGOo9UjAKXUCiDuGD96WGu94AT7Gaq1LlFKxQDLlVK7tNarf6a/6cB0gMSkyBN8eSGEECdLaa3b/iJKfQncp7VudYBXKfVnoEFr/bdW2k0HHgP2t7nAziEKkDGUFrIvfiT74keyL1p001pHn0jDtg4Ct0opFQQYtNb1R2+PBmadwFOnn+hG+AOlVK7W+mdnWvkT2Rc/kn3xI9kXJ6+t00AnKaWKgSHAZ0qppUcfj1dKLT7aLBZYo5TaAnwHfKa1/rwt/QohhGi7ts4C+hj4+BiPlwDjj94uBPq2pR8hhBCnXns+E3i2rwtoZ2R//Ej2xY9kX/xI9sVJOiWDwEIIITqe9nwEIIQQ4jSSABBCCD/VrgNAKfW0UmqXUmqrUupjpVSYr2vylRNdeK8zU0qNVUrtVkrlK6Ue9HU9vqSUel0pdVgplefrWnxNKZWklFqllNp59G/kd76uqaNo1wEALAd6a62zgT3AQz6ux5e+X3jvmGdQd3ZKKSPwEjAO6AVMUUr18m1VPjUXGOvrItoJN3Cv1joTGAzc7ue/GyesXQeA1nqZ1tp99O63QKIv6/ElrfVOrfVuX9fhQ+cA+VrrQq21E5gPXOrjmnzm6FIqVb6uoz3QWpdqrTcevV0P7AQSfFtVx9CuA+B/3Aos8XURwmcSgIM/uV+M/JGL/6GUSgH6A+t8W0nHcNqXgmjNiSw2p5R6mJbDvLfPZG1n2ilaeK+zOtaa4zKHWfxAKRUMfAjcrbWu83U9HYHPA0BrPfJ4P1dK3QRMAEboTn7SQmv7ws8VA0k/uZ8IlPioFtHOKKUCaHnzf1tr/ZGv6+ko2vVXQEqpscADwESttd3X9QifWg/0UEqlKqXMwDXAQh/XJNoB1XJFqjnATq31s76upyNp1wEAvAiE0HINgc1KqVd9XZCv/NzCe/7i6GSAO4CltAzyvae13u7bqnxHKfUfYC2QoZQqVkr9ytc1+dBQ4AbgoqPvE5uVUuN9XVRHIEtBCCGEn2rvRwBCCCFOEwkAIYTwUxIAQgjhpyQAhBDCT0kACCGEn5IAEEIIPyUBIIQQfur/AeoPeOHNQU5zAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1a6acd115f8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#查看rbf的效果\n",
    "svm = SVC(C=3.0, kernel='rbf',gamma=0.1, epochs=10, tol=0.2)\n",
    "svm.fit(data, target)\n",
    "utils.plot_decision_function(data, target, svm, svm.support_vectors)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1a6acdfce80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#查看poly的效果\n",
    "svm = SVC(C=3.0, kernel='poly',degree=3, epochs=10, tol=0.2)\n",
    "svm.fit(data, target)\n",
    "utils.plot_decision_function(data, target, svm, svm.support_vectors)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 六.问题讨论\n",
    "\n",
    "#### 1.RBF函数中$\\sigma$的不同取值对训练的影响\n",
    "为了探索该问题，我们对$\\sigma$从小到大取一组数，在另外一个伪数据上查看效果"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.datasets import make_classification\n",
    "data, target = make_classification(n_samples=100, n_features=2, n_classes=2, n_informative=1, n_redundant=0,\n",
    "                                   n_repeated=0, n_clusters_per_class=1, class_sep=.5,random_state=21)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "c1 = SVC(C=3.0, kernel='rbf',gamma=0.1, epochs=10, tol=0.01)\n",
    "c1.fit(data, target)\n",
    "c2 = SVC(C=3.0, kernel='rbf',gamma=0.5, epochs=10, tol=0.01)\n",
    "c2.fit(data, target)\n",
    "c3 = SVC(C=3.0, kernel='rbf',gamma=2, epochs=10, tol=0.01)\n",
    "c3.fit(data, target)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1a6ace64a20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(16,4))\n",
    "plt.subplot(1,3,1)\n",
    "utils.plot_decision_function(data,target,c1)\n",
    "plt.subplot(1,3,2)\n",
    "utils.plot_decision_function(data,target,c2)\n",
    "plt.subplot(1,3,3)\n",
    "utils.plot_decision_function(data,target,c3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "上面$\\sigma$分别取值$[0.1,0.5,2]$，通过结果可以简单总结如下：   \n",
    "\n",
    "（1）如果$\\sigma$取值越小，SVM越能抓住个别样本的信息，越容易过拟合；   \n",
    "\n",
    "（2）$\\sigma$取值越大SVM的泛化能力越强  \n",
    "\n",
    "如何对该结果进行理解呢？可以通过样本点在映射空间的距离来看，对任意两个样本点$x,z$，它们在映射空间中的距离的平方可以表示如下：      \n",
    "\n",
    "$$\n",
    "||\\phi(x)-\\phi(z)||^2=(\\phi(x)-\\phi(z))^T(\\phi(x)-\\phi(z))\\\\\n",
    "=\\phi(x)^T\\phi(x)+\\phi(z)^T\\phi(z)-2\\phi(x)^T\\phi(z)\\\\\n",
    "=K(x,x)+K(z,z)-2K(x,z)\\\\\n",
    "=2-2\\cdot exp(-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2})（将K(x,z)替换为RBF函数）\n",
    "$$   \n",
    "\n",
    "所以：   \n",
    "\n",
    "（1）如果$\\sigma\\rightarrow 0$，那么$-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2}\\rightarrow -\\infty$，那么$exp(-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2})\\rightarrow 0$，那么$||\\phi(x)-\\phi(z)||\\rightarrow \\sqrt 2$   \n",
    "\n",
    "（2）如果$\\sigma\\rightarrow \\infty$，那么$-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2}\\rightarrow 0$，那么$exp(-\\frac{\\mid\\mid x-z\\mid\\mid^2}{2\\sigma^2})\\rightarrow 1$，那么$||\\phi(x)-\\phi(z)||\\rightarrow 0$   \n",
    "\n",
    "我们可以验证上面的总结，若$\\sigma$取值越小，样本点在映射空间越分散，则在高维空间越容易线性可分，表现在低维空间则越容易过拟合；$\\sigma$取值越大，样本点在映射空间越集中，越不易线性可分，表现在低维空间也是不易线性可分  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 2.如何理解RBF可将数据映射到无限维空间\n",
    "原谅自己，这部分公式不想码了，具体内容参考大神的[知乎帖子>>>](https://zhuanlan.zhihu.com/p/58585604)，其中主要需要用到两个等式变换：   \n",
    "\n",
    "（1）指数函数的泰勒级数：$e^x=\\sum_{n=1}^{\\infty}\\frac{x^n}{n!}$，将RBF函数进行展开；   \n",
    "\n",
    "（2）利用多项式展开定理，将样本$x$与$z$在原始空间的内积的$n$次方进行展开，假如$x,z\\in R^k$，那么：   \n",
    "$$\n",
    "(x^Tz)^n=(\\sum_{i=1}^kx_iz_i)^n\\\\\n",
    "=\\sum_{l=1}^L\\frac{n!}{n_{l_1}!n_{l_2}!\\cdots n_{l_k}!}(x_1z_1)^{n_{l_1}}(x_2z_2)^{n_{l_2}}\\cdots (x_kz_k)^{n_{l_k}}\n",
    "$$   \n",
    "\n",
    "这里，$\\sum_{i=1}^kn_{l_i}=n$，$L=\\frac{(n+k-1)!}{n!(k-1)!}$，进一步的，上面等式可以化简为形如这样的表达式：$\\Phi(x)^T\\Phi(z)$，$\\Phi(x)=[\\Phi_1(x),\\Phi_2(x),\\cdots ,\\Phi_L(x)]$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
